home *** CD-ROM | disk | FTP | other *** search
/ Aminet 48 / Aminet 48 (2002)(GTI - Schatztruhe)[!][Apr 2002].iso / Aminet / text / edit / vim60rt.lha / Vim / vim60 / syntax / matlab.vim < prev    next >
Encoding:
Text File  |  2001-05-10  |  3.4 KB  |  110 lines

  1. " Vim syntax file
  2. " Language:    Matlab
  3. " Maintainer:    Preben "Peppe" Guldberg <c928400@student.dtu.dk>
  4. "        Original author: Mario Eusebio
  5. " Last Change:    Tue Jul 28 17:44:06 1998
  6.  
  7. " For version 5.x: Clear all syntax items
  8. " For version 6.x: Quit when a syntax file was already loaded
  9. if version < 600
  10.   syntax clear
  11. elseif exists("b:current_syntax")
  12.   finish
  13. endif
  14.  
  15. syn keyword matlabStatement        return
  16. syn keyword matlabLabel            case switch
  17. syn keyword matlabConditional        else elseif end if otherwise
  18. syn keyword matlabRepeat        do for while
  19.  
  20. syn keyword matlabTodo            contained  TODO
  21.  
  22. " If you do not want these operators lit, uncommment them and the "hi link" below
  23. syn match matlabArithmeticOperator    "[-+]"
  24. syn match matlabArithmeticOperator    "\.\=[*/\\^]"
  25. syn match matlabRelationalOperator    "[=~]="
  26. syn match matlabRelationalOperator    "[<>]=\="
  27. syn match matlabLogicalOperator        "[&|~]"
  28.  
  29. syn match matlabLineContinuation    "\.\{3}"
  30.  
  31. "syn match matlabIdentifier        "\<\a\w*\>"
  32.  
  33. " String
  34. syn region matlabString            start=+'+ end=+'+    oneline
  35.  
  36. " If you don't like tabs
  37. syn match matlabTab            "\t"
  38.  
  39. " Standard numbers
  40. syn match matlabNumber        "\<\d\+[ij]\=\>"
  41. " floating point number, with dot, optional exponent
  42. syn match matlabFloat        "\<\d\+\(\.\d*\)\=\([edED][-+]\=\d\+\)\=[ij]\=\>"
  43. " floating point number, starting with a dot, optional exponent
  44. syn match matlabFloat        "\.\d\+\([edED][-+]\=\d\+\)\=[ij]\=\>"
  45.  
  46. " Transpose character and delimiters: Either use just [...] or (...) aswell
  47. syn match matlabDelimiter        "[][]"
  48. "syn match matlabDelimiter        "[][()]"
  49. syn match matlabTransposeOperator    "[])a-zA-Z0-9.]'"lc=1
  50.  
  51. syn match matlabSemicolon        ";"
  52.  
  53. syn match matlabComment            "%.*$"    contains=matlabTodo,matlabTab
  54.  
  55. syn keyword matlabOperator        break zeros default margin round ones rand
  56. syn keyword matlabOperator        ceil floor size clear zeros eye mean std cov
  57.  
  58. syn keyword matlabFunction        error eval function
  59.  
  60. syn keyword matlabImplicit        abs acos atan asin cos cosh exp log prod sum
  61. syn keyword matlabImplicit        log10 max min sign sin sqrt tan reshape
  62.  
  63. syn match matlabError    "-\=\<\d\+\.\d\+\.[^*/\\^]"
  64. syn match matlabError    "-\=\<\d\+\.\d\+[eEdD][-+]\=\d\+\.\([^*/\\^]\)"
  65.  
  66. " Define the default highlighting.
  67. " For version 5.7 and earlier: only when not done already
  68. " For version 5.8 and later: only when an item doesn't have highlighting yet
  69. if version >= 508 || !exists("did_matlab_syntax_inits")
  70.   if version < 508
  71.     let did_matlab_syntax_inits = 1
  72.     command -nargs=+ HiLink hi link <args>
  73.   else
  74.     command -nargs=+ HiLink hi def link <args>
  75.   endif
  76.  
  77.   HiLink matlabTransposeOperator    matlabOperator
  78.   HiLink matlabOperator        Operator
  79.   HiLink matlabLineContinuation    Special
  80.   HiLink matlabLabel            Label
  81.   HiLink matlabConditional        Conditional
  82.   HiLink matlabRepeat            Repeat
  83.   HiLink matlabTodo            Todo
  84.   HiLink matlabString            String
  85.   HiLink matlabDelimiter        Identifier
  86.   HiLink matlabTransposeOther        Identifier
  87.   HiLink matlabNumber            Number
  88.   HiLink matlabFloat            Float
  89.   HiLink matlabFunction        Function
  90.   HiLink matlabError            Error
  91.   HiLink matlabImplicit        matlabStatement
  92.   HiLink matlabStatement        Statement
  93.   HiLink matlabSemicolon        SpecialChar
  94.   HiLink matlabComment            Comment
  95.  
  96.   HiLink matlabArithmeticOperator    matlabOperator
  97.   HiLink matlabRelationalOperator    matlabOperator
  98.   HiLink matlabLogicalOperator        matlabOperator
  99.  
  100. "optional highlighting
  101.   "HiLink matlabIdentifier        Identifier
  102.   "HiLink matlabTab            Error
  103.  
  104.   delcommand HiLink
  105. endif
  106.  
  107. let b:current_syntax = "matlab"
  108.  
  109. "EOF    vim: ts=8 noet tw=100 sw=8 sts=0
  110.